#pragma once

void print_matrix(double** phi, int n, char* buf);

void print_matrix2(double** phi, double** eta, int n, char* buf);

void print_matrix3(double** phi, double** eta, double **xx, int n, char* buf);

void print_vector(double *x, int n, char* buf);

double vec_norm2(double *a; int n);

double inner_product(double *a, double *b, int n);

void GramSchmidt(double **a, double **q, double **r, double m, double n);
